package com.ruicar.afs.cloud.basic.common.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.ruicar.afs.cloud.common.core.entity.BaseEntity;
import com.ruicar.afs.cloud.common.modules.contract.enums.ExpenseStatusEnum;
import com.ruicar.afs.cloud.common.modules.contract.enums.FeeTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author: Lee
 * @date 2020-08-10 04:59:37 
 * @description 合同费用记录明细表 
 */
@Data
@Accessors(chain = true)
@TableName(value ="basic_expense_record_detail", autoResultMap = true)
public class BasicExpenseRecordDetail extends BaseEntity<BasicExpenseRecordDetail> {

	/** 合同编号 */
	@ApiModelProperty("合同编号")
	private String contractNo;
	/** 费用类型 枚举值：还款日变更手续费、提前还款手续费 */
	@ApiModelProperty("费用类型 枚举值：还款日变更手续费、提前还款手续费")
	private FeeTypeEnum costType;
	/** 费用金额 */
	@ApiModelProperty("费用金额")
	private BigDecimal costAmt;
	/** 已收金额 */
	@ApiModelProperty("已收金额")
	private BigDecimal receivedAmt;
	/** 已豁免金额 */
	@ApiModelProperty("已豁免金额")
	private BigDecimal exemptedAmt;
	/** 实际豁免金额 */
	@ApiModelProperty("实际豁免金额")
	private BigDecimal exemptionAmt;
	/** 剩余应收金额 */
	@ApiModelProperty("剩余应收金额")
	private BigDecimal remainingAmt;
	/** 到期日 */
	@ApiModelProperty("到期日")
	private Date endDate;
	/** 状态 枚举值：费用已还清、费用未还清 */
	@ApiModelProperty("状态 枚举值：费用已还清、费用未还清")
	private ExpenseStatusEnum status;
	/** 备注 */
	@ApiModelProperty("备注")
	private String remarks;
	/** 费用是否允许发起扣款 no-不允许扣款，其他值，允许扣款 */
	@ApiModelProperty("费用是否允许发起扣款 no-不允许扣款，其他值，允许扣款")
	private String isDeduction;
	/** 豁免单冲抵费用 */
	@ApiModelProperty("豁免单冲抵费用")
	private BigDecimal exemptBillMitigate;
}
